<?php


/*************************** CONFIGURAÇÕES DO SITE ***************************/
define('HOST','localhost');
define('USER','root');
define('PASS','710092600');
define('DBSA','svonline');

/*************************** AUTO LOAD DE CLASSES ***************************/
function __autoload($Class) {
  
    $cDir = ['Conn','Models'];
    $iDir = null;
    
    foreach($cDir as $dirName):
        if(!$iDir && file_exists(__DIR__."\\{$dirName}\\{$Class}.class.php") && !is_dir($dirName)):
            include_once(__DIR__."\\{$dirName}\\{$Class}.class.php");
            $iDir = true;
        endif;
    endforeach;
    
    if(!$iDir):
        trigger_error("Não foi possível incluir {$Class}.class.php", E_USER_ERROR);
        die();
    endif;
    
}

// TRATAMENTO DE ERROS #####################
// CSS CONTANTES :: Mensagens de Erro
define('WS_ACCEPT','accept');
define('WS_INFOR', 'infor');
define('WS_ALERT', 'alert');
define('WS_ERROR', 'error');

//WErro :: Exibe erros lançados :: front
function WSErro($ErrMsg, $ErrNo, $ErrDie = NULL) {
    $CssClass = ($ErrNo == E_USER_NOTICE ? WS_INFOR : ($ErrNo == E_USER_WARNING ? WS_ALERT : ($ErrNo == E_USER_ERROR ? WS_ERROR : $ErrNo)));
    echo "<p class=\"trigger {$CssClass}\">{$ErrMsg}<span class=\"ajax_close\"></span></p>";
    
    if($ErrDie):
        die;
    endif;
}

//PHPErro :: personaliza o gatilho do PHP
function PHPErro($ErroNo, $ErrMsg, $ErrFile, $ErrLine) {
    $CssClass = ($ErroNo == E_USER_NOTICE ? WS_INFOR : ($ErroNo == E_USER_WARNING ? WS_ALERT : ($ErroNo == E_USER_ERROR ? WS_ERROR : $ErroNo)));
    echo "<p class=\"trigger {$CssClass}\">";
    echo "<b>Erro na Linha: {$ErrLine} ::</b> {$ErrMsg}</b><br />";
    echo "<small>{$ErrFile}</small>";
    echo "</p>";
    
    if($ErroNo == E_USER_ERROR):
        die;
    endif;    
}

set_error_handler('PHPErro');

